Freeslot
SPR_OVRD
SPR_BFLA
SPR_RNGM
MT_FINALBOSS
S_FINALBOSSSTANDBY0
S_FINALBOSSSTANDBY1
S_FINALBOSSSTANDBY2
S_FINALBOSSINIT0
S_FINALBOSSINIT1
S_FINALBOSSDICE0
S_FINALBOSSDICE1
S_FINALBOSSDICE2
S_FINALBOSSRUNSTART
S_FINALBOSSORBITSTART
S_FINALBOSSCHARGESTART
S_FINALBOSSCIRCLESTART
S_FINALBOSSSPINSTART
S_FINALBARRAGESTART
S_FINALBARRAGE0
S_FINALBARRAGE1
S_FINALBARRAGE2
S_FINALBARRAGE3
S_FINALBARRAGE4
S_FINALBARRAGE5
S_FINALBARRAGE6
S_FINALBARRAGE7
S_FINALBARRAGE8
S_FINALBARRAGE9
S_FINALBARRAGE10
S_FINALBARRAGE11
S_FINALBARRAGE12
S_FINALBARRAGE13
S_FINALBARRAGE14
S_FINALBARRAGE15
S_FINALBARRAGER
S_FINALBOSSSPIN0
S_FINALBOSSSPIN1
S_FINALBOSSSPIN2
S_FINALBOSSSPIN3
S_FINALBOSSSPIN4
S_FINALBOSSSPIN5
S_FINALBOSSSPIN6
S_FINALBOSSSPIN7
S_FINALBOSSSPIN8
S_FINALBOSSSPIN9
S_FINALBOSSSPIN10
S_FINALBOSSSPIN11
S_FINALBOSSSPIN12
S_FINALBOSSRUN0
S_FINALBOSSRUN1
S_FINALBOSSRUNTO
S_FINALBOSSRUNFROM
S_FINALBOSSRUN2
S_FINALBOSSRUN3
S_FINALBOSSRUN4
S_FINALBOSSRUN5
S_FINALBOSSRUN6
S_FINALBOSSRUN7
S_FINALBOSSRUN8
S_FINALBOSSRUN9
S_FINALBOSSCHARGE0
S_FINALBOSSCHARGE1
S_FINALBOSSCHARGE2
S_FINALBOSSCHARGE3
S_FINALBOSSCHARGE4
S_FINALBOSSCHARGE5
S_FINALBOSSCHARGE6
S_FINALBOSSCHARGE7
S_FINALBOSSCHARGE8
S_FINALBOSSCHARGE9
S_FINALBOSSCHARGE10
S_FINALBOSSCIRCLE0
S_FINALBOSSCIRCLE1
S_FINALBOSSCIRCLE2
S_FINALBOSSCIRCLE3
S_FINALBOSSCIRCLE4
S_FINALBOSSCIRCLE5
S_FINALBOSSCIRCLE6
S_FINALBOSSCIRCLE7
S_FINALBOSSCIRCLE8
S_FINALBOSSCIRCLE9
S_FINALBOSSCIRCLE10
S_FINALBOSSCIRCLE11
S_FINALBOSSCIRCLE12
S_FINALBOSSCIRCLE13
S_FINALBOSSCIRCLE14
S_FINALBOSSCIRCLE15
S_FINALBOSSCIRCLE16
S_FINALBOSSORBITSTART
S_FINALBOSSORBIT0
S_FINALBOSSORBIT1
S_FINALBOSSORBIT2
S_FINALBOSSORBIT3
S_FINALBOSSORBIT4
S_FINALBOSSORBIT5
S_FINALBOSSORBIT6
S_FINALBOSSORBIT7
S_FINALBOSSORBIT8
S_FINALBOSSORBIT9
S_FINALBOSSORBIT10
S_FINALBOSSORBIT11
S_FINALBOSSORBIT12
S_FINALBOSSPAINSTART
S_FINALBOSSPAIN0
S_FINALBOSSPAIN1
S_FINALBOSSPAIN2
S_FINALBOSSPAIN3
S_FINALBOSSPAIN4
S_FINALBOSSPAIN5
S_FINALBOSSPAINR
S_FINALBOSSDEATH0
S_FINALBOSSDEATH1
S_FINALBOSSDEATH2
S_FINALBOSSDEATH3
S_FINALBOSSDEATH4
S_FINALBOSSRECOVER0
S_FINALBOSSRECOVER1
S_FINALBOSSRECOVER2
S_FINALBOSSRECOVER3
S_FINALBOSSRECOVER4
S_FINALBOSSRECOVER5
S_FINALBOSSRECOVER6
S_FINALBOSSCOLLECT0
S_FINALBOSSCOLLECT1
S_FINALBOSSCOLLECT2
S_FINALBOSSCOLLECT3
S_FINALBOSSCOLLECT4
S_FINALBOSSCOLLECT5
S_FINALBOSSCOLLECTR
S_FINALBOSSCROSSCOUNTERSTART
S_FINALBOSSCROSSCOUNTER0
S_FINALBOSSCROSSCOUNTER1
S_FINALBOSSCROSSCOUNTER2
S_FINALBOSSCROSSCOUNTER3
S_FINALBOSSCROSSCOUNTER4
S_FINALBOSSCROSSCOUNTER5
S_FINALBOSSCROSSCOUNTER6
S_FINALBOSSCROSSCOUNTERR1
S_FINALBOSSCROSSCOUNTERR2
MT_FINALBOSSRUNECHOSHORT
MT_FINALBOSSRUNECHO
S_FINALBOSSRUNECHOSHORT0
S_FINALBOSSRUNECHO0
S_FINALBOSSRUNECHO1
S_FINALBOSSRUNECHO2
S_FINALBOSSRUNECHO3
MT_FINALBOSSSPINECHO
S_FINALBOSSSPINECHO0
S_FINALBOSSSPINECHO1
S_FINALBOSSSPINECHO2
S_FINALBOSSSPINECHO3
MT_FINALBOSSTHOK
S_FINALBOSSTHOK0
S_FINALBOSSTHOK1
S_FINALBOSSTHOK2
S_FINALBOSSTHOK3
MT_FINALCANNON
S_FINALCANNON0
S_FINALCANNON1
S_FINALCANNON2
S_FINALCANNON3
S_FINALCANNON4
S_FINALCANNONDYE0
S_FINALCANNONDYE1
S_FINALCANNONDYE2
S_FINALCANNONDYE3
S_FINALCANNONDYE4
S_FINALCANNONDYE5
S_FINALCANNONDYE6
S_FINALCANNONDYE7
S_FINALCANNONDYE8
MT_TEMPFLINGRING
S_TEMPFLINGRING0
S_TEMPFLINGRING1
S_TEMPFLINGRING2
S_TEMPFLINGRING3
MT_FINALFIRE
S_FINALFIRE0
MT_FINALBARRAGEWAVE
S_FINALBARRAGEWAVE0
S_FINALBARRAGEWAVE1
S_FINALBARRAGEWAVE2
MT_FINALBARRAGEPILLAR
S_FINALBARRAGEPILLAR0
S_FINALBARRAGEPILLAR1
S_FINALBARRAGEPILLAR2
S_FINALBARRAGEPILLAR3
S_FINALBARRAGEPILLAR4
S_FINALBARRAGEPILLAR5
S_FINALBARRAGEPILLAR6
S_FINALBARRAGEPILLAR7
MT_FINALBARRAGESHOOTER
S_FINALBARRAGESHOOTER0
S_FINALBARRAGESHOOTER1
S_FINALBARRAGESHOOTER2
MT_FINALBARRAGESHOT
S_FINALBARRAGESHOT0
S_FINALBARRAGESHOT1
S_FINALBARRAGESHOT2
S_FINALBARRAGESHOT3
S_FINALBARRAGESHOT4
S_FINALBARRAGESHOT5
S_FINALBARRAGESHOT6
S_FINALBARRAGESHOT7
S_FINALBARRAGESHOT8
S_FINALBARRAGESHOT9
S_FINALBARRAGESHOT10
S_FINALBARRAGERRSHOT0A
S_FINALBARRAGERRSHOT0B
S_FINALBARRAGERRSHOT0C
S_FINALBARRAGEBOMBSHOT0
S_FINALBARRAGEAUTOSHOT0
S_FINALBARRAGEHOMINGSHOT0
S_FINALBARRAGEBOMBSHOT1
S_FINALBARRAGEBOMBSHOT2
S_FINALBARRAGEAUTOSHOT1
S_FINALBARRAGEAUTOSHOT2
S_FINALBARRAGEAUTOSHOT3
S_FINALBARRAGEAUTOSHOT4
S_FINALBARRAGERRSHOT1
S_FINALBARRAGERRSHOT2
S_FINALBARRAGEHOMINGSHOT1
S_FINALBARRAGEHOMINGSHOT2
MT_HOMINGRING
S_HOMINGRING0
S_HOMINGRING1
S_HOMINGRING2
S_HOMINGRING3
S_HOMINGRING4
MT_FINALDEMOBOMB
S_FINALDEMOBOOM
MT_FINALSHOCKWAVEFX
S_FINALSHOCKWAVEFX1
S_FINALSHOCKWAVEFX2
S_FINALSHOCKWAVEFX3
S_FINALSHOCKWAVEFX4
S_FINALSHOCKWAVEFX5
S_FINALSHOCKWAVEFX6
S_FINALSHOCKWAVEFX7
SPR_EART
MT_EARTH
S_EARTH0
S_EARTH1


Object MT_EARTH
SpawnState = S_EARTH0
ReactionTime = 45
Speed = 40
Radius = 32*FRACUNIT
Height = 32*FRACUNIT
Damage = 3
SpawnHealth = 1
MapThingNum = 3364
DispOffset = 0
Flags = MF_NOCLIP|MF_NOGRAVITY


State S_EARTH0
SpriteName = EART
SpriteFrame = A
Duration = 125
Next = S_EARTH1

State S_EARTH1
SpriteName = EART
SpriteFrame = A
Action = A_ForceWin
Duration = 0
Next = S_TNTBARREL_EXPL1

Object MT_FINALBOSS
SpawnState = S_FINALBOSSSTANDBY0
PainState = S_FINALBOSSPAINSTART
DeathState = S_FINALBOSSCROSSCOUNTERSTART
ReactionTime = 45
Speed = 40
Radius = 16*FRACUNIT
Height = 48*FRACUNIT
Damage = 3
PainSound = sfx_s1c6
DeathSound = sfx_cybdth
SpawnHealth = 999
MapThingNum = 3362
DispOffset = 0
Flags = MF_SPECIAL|MF_SHOOTABLE|MF_BOSS

State S_FINALBOSSCROSSCOUNTERSTART
SpriteName = OVRD
SpriteFrame = G
Action = A_Fireshot
Var1 = MT_FINALBOSSRUNECHOSHORT
Duration = 0
Next = S_FINALBOSSCROSSCOUNTER0

State S_FINALBOSSCROSSCOUNTER0
SpriteName = OVRD
SpriteFrame = G|FF_ANIMATE|FF_GLOBALANIM
Var1 = 3
Var2 = 2
Duration = 1
Next = S_FINALBOSSCROSSCOUNTER1

State S_FINALBOSSCROSSCOUNTER1
SpriteName = OVRD
SpriteFrame = G
Action = A_RemoteAction
Var1 = MT_PLAYER
Var2 = S_FINALBOSSCROSSCOUNTERR1
Duration = 0
Next = S_FINALBOSSCROSSCOUNTER2

State S_FINALBOSSCROSSCOUNTER2
SpriteName = OVRD
SpriteFrame = G
Action = A_RemoteAction
Var1 = MT_PLAYER
Var2 = S_FINALBOSSCROSSCOUNTERR2
Duration = 0
Next = S_FINALBOSSCROSSCOUNTER3

State S_FINALBOSSCROSSCOUNTER3
SpriteName = OVRD
SpriteFrame = G
Action = A_CapeChase
Var1 = 0
Var2 = (32<<16)
Duration = 0
Next = S_FINALBOSSCROSSCOUNTER4

State S_FINALBOSSCROSSCOUNTER4
SpriteName = OVRD
SpriteFrame = G
Action = A_PlaySound
Var1 = sfx_spndsh
Duration = 0
Next = S_FINALBOSSCROSSCOUNTER5

State S_FINALBOSSCROSSCOUNTER5
SpriteName = OVRD
SpriteFrame = G
Action = A_LinedefExecute
Var1 = 2
Duration = 0
Next = S_FINALBOSSCROSSCOUNTER6


State S_FINALBOSSCROSSCOUNTER6
SpriteName = OVRD
SpriteFrame = G
Action = A_TrapShot
Var1 = MT_FINALSHOCKWAVEFX
Duration = 0
Next = S_FINALBOSSCROSSCOUNTER0

State S_FINALBOSSCROSSCOUNTERR1
Action = A_RandomState
Var1 = S_PLAY_ROLL
Var2 = S_PLAY_ROLL


State S_FINALBOSSCROSSCOUNTERR2
Action = A_ZThrust
Var1 = 0
Var2 = (1<<16)+1

State S_FINALBOSSSTANDBY0
SpriteName = OVRD
SpriteFrame = F
Action = None
Duration = 5
Next = S_FINALBOSSSTANDBY1


State S_FINALBOSSSTANDBY1
SpriteName = OVRD
SpriteFrame = F
Action = A_FindTarget
Var1 = MT_PLAYER
Duration = 0
Next = S_FINALBOSSSTANDBY2


State S_FINALBOSSSTANDBY2
SpriteName = OVRD
SpriteFrame = F
Action = A_CheckCusValMemo
Var1 = 1
Var2 = S_FINALBOSSRUNSTART
Duration = 0
Next = S_FINALBOSSINIT0


State S_FINALBOSSINIT0
SpriteName = OVRD
SpriteFrame = F
Action = A_SetCustomValue
Var1 = (MT_TEMPFLINGRING<<16)+100
Var2 = S_FINALBOSSINIT0
Duration = 0
Next = S_FINALBOSSINIT1

State S_FINALBOSSINIT1
SpriteName = OVRD
SpriteFrame = F
Action = A_UseCusValMemo
Var1 = 1
Duration = 0
Next = S_FINALBOSSSTANDBY0


State S_FINALBARRAGESTART
SpriteName = OVRD
SpriteFrame = B
Action = A_PlaySound
Var1 = sfx_cdfm62
Duration = 0
Next = S_FINALBARRAGE0

State S_FINALBARRAGE0
SpriteName = OVRD
SpriteFrame = B
Action = A_FindTracer
Var1 = MT_WAYPOINT
Var2 = 0
Duration = 0
Next = S_FINALBARRAGE1

State S_FINALBARRAGE1
SpriteName = OVRD
SpriteFrame = B
Action = A_FaceTracer
Duration = 0
Next = S_FINALBARRAGE2

State S_FINALBARRAGE2
SpriteName = OVRD
SpriteFrame = B
Action = A_Thrust
Var1 = 100
Var2 = 1
Duration = 1
Next = S_FINALBARRAGE3


State S_FINALBARRAGE3
SpriteName = OVRD
SpriteFrame = B
Action = A_TrapShot
Var1 = MT_FINALBOSSRUNECHOSHORT
Duration = 0
Next = S_FINALBARRAGE4

State S_FINALBARRAGE4
SpriteName = OVRD
SpriteFrame = B
Action = A_CheckRange
Var1 = (1<<16)+128
Var2 = S_FINALBARRAGE5
Duration = 0
Next = S_FINALBARRAGE0


State S_FINALBARRAGE5
SpriteName = OVRD
SpriteFrame = L
Action = A_PlaySound
Var1 = sfx_trpowr
Var2 = 0
Duration = 0
Next = S_FINALBARRAGE6


State S_FINALBARRAGE6
SpriteName = OVRD
SpriteFrame = L
Action = A_Zthrust
Var1 = 1
Var2 = (1<<16)+1
Duration = 0
Next = S_FINALBARRAGE7


State S_FINALBARRAGE7
SpriteName = OVRD
SpriteFrame = L
Action = A_SetObjectFlags
Var1 = MF_NOGRAVITY
Var2 = 2
Duration = 100
Next = S_FINALBARRAGE8

State S_FINALBARRAGE8
SpriteName = OVRD
SpriteFrame = L
Action = A_Zthrust
Var1 = 0
Var2 = (1<<16)+1
Duration = 0
Next = S_FINALBARRAGE9


State S_FINALBARRAGE9
SpriteName = OVRD
SpriteFrame = L
Action = A_MultiShot
Var1 = (MT_FINALBARRAGEWAVE<<16)+32
Var2 = -128
Duration = 300
Next = S_FINALBARRAGE10

State S_FINALBARRAGE10
SpriteName = OVRD
SpriteFrame = O
Action = A_FaceTarget
Duration = 10
Next = S_FINALBARRAGE11

State S_FINALBARRAGE11
SpriteName = OVRD
SpriteFrame = O
Action = A_CheckThingCount
Var1 = (MT_FINALBARRAGESHOT<<16)+1
Var2 = S_FINALBARRAGE12
Duration = 0
Next = S_FINALBOSSDEATH0

State S_FINALBARRAGE12
SpriteName = OVRD
SpriteFrame = O
Action = A_RemoteAction
Var1 = MT_FINALBARRAGESHOT
Var2 = S_FINALBARRAGER
Duration = 1
Next = S_FINALBARRAGE13

State S_FINALBARRAGE13
SpriteName = OVRD
SpriteFrame = O
Action = A_FindTracer
Var1 = MT_FINALBARRAGESHOT
Var2 = 1
Duration = 0
Next = S_FINALBARRAGE14

State S_FINALBARRAGE14
SpriteName = OVRD
SpriteFrame = O
Action = A_RemoteAction
Var1 = -2
Var2 = S_FINALBARRAGER
Duration = 0
Next = S_FINALBARRAGE15

State S_FINALBARRAGE15
SpriteName = OVRD
SpriteFrame = O
Action = A_FaceTarget
Duration = 0
Next = S_FINALBARRAGE11

State S_FINALBARRAGER
Action = A_SetTics
Var1 = 1
Var2 = 0


State S_FINALBOSSDEATH0
SpriteName = OVRD
SpriteFrame = O
Action = A_SetCustomValue
Var1 = (MT_TEMPFLINGRING<<16)+101
Var2 = 0
Duration = 0
Next = S_FINALBOSSDEATH1


State S_FINALBOSSDEATH1
SpriteName = OVRD
SpriteFrame = F
Action = A_UseCusValMemo
Var1 = 1
Duration = 0
Next = S_FINALBOSSDEATH2

State S_FINALBOSSDEATH2
SpriteName = OVRD
SpriteFrame = O
Action = A_SetObjectFlags2
Var1 = MF2_FRET
Var2 = 1
Duration = 0
Next = S_FINALBOSSDEATH3


State S_FINALBOSSDEATH3
SpriteName = OVRD
SpriteFrame = F
Action = A_SetObjectFlags
Var1 = MF_SPECIAL|MF_SHOOTABLE|MF_BOSS
Var2 = 0
Duration = -1
Next = S_FINALBOSSDEATH3

State S_FINALBOSSDEATH4
SpriteName = OVRD
SpriteFrame = F
Action = A_ForceWin
Duration = 0
Next = S_TNTBARREL_EXPL1

State S_FINALBOSSPAINSTART
SpriteName = OVRD
SpriteFrame = K
Action = A_CheckCusValMemo
Var1 = (MT_TEMPFLINGRING<<16)+101
Var2 = S_FINALBOSSDEATH4
Duration = 0
Next = S_FINALBOSSPAIN0

State S_FINALBOSSPAIN0
SpriteName = OVRD
SpriteFrame = K
Action = A_CheckCusValMemo
Var1 = (MT_TEMPFLINGRING<<16)+1
Var2 = S_FINALBOSSPAIN1
Duration = 0
Next = S_FINALBARRAGESTART

State S_FINALBOSSPAIN1
SpriteName = OVRD
SpriteFrame = K
Action = A_PlaySound
Var1 = sfx_s1c6
Var2 = 0
Duration = 0
Next = S_FINALBOSSPAIN2

State S_FINALBOSSPAIN2
SpriteName = OVRD
SpriteFrame = K
Action = A_ZThrust
Var1 =  28
Var2 = (1<<16)+1
Duration = 0
Next = S_FINALBOSSPAIN3


State S_FINALBOSSPAIN3
SpriteName = OVRD
SpriteFrame = K
Action = A_Thrust
Var1 =  -10
Var2 = 0
Duration = 0
Next = S_FINALBOSSPAIN4


State S_FINALBOSSPAIN4
SpriteName = OVRD
SpriteFrame = K
Action = A_CusValAction
Var1 = S_FINALBOSSPAINR
Var2 = 4
Duration = 120
Next = S_FINALBOSSPAIN5

State S_FINALBOSSPAIN5
SpriteName = OVRD
SpriteFrame = K
Action = A_SetCustomValue
Var1 = -3
Var2 = 0
Duration = 0
Next = S_FINALBOSSCOLLECT3

State S_FINALBOSSPAINR
Action = A_MultiShot
Var1 = (MT_TEMPFLINGRING<<16)+32
Var2 = 0

State S_FINALBOSSRECOVER0
SpriteName = OVRD
SpriteFrame = K
Action = A_PlaySound
Var1 = sfx_cdfm62
Var2 = 0
Duration = 0
Next = S_FINALBOSSRECOVER1

State S_FINALBOSSRECOVER1
SpriteName = OVRD
SpriteFrame = F
Action = A_FindTracer
Var1 =  MT_TEMPFLINGRING
Var2 = 1
Duration = 0
Next = S_FINALBOSSRECOVER2

State S_FINALBOSSRECOVER2
SpriteName = OVRD
SpriteFrame = F
Action = A_FaceTracer
Duration = 0
Next = S_FINALBOSSRECOVER3


State S_FINALBOSSRECOVER3
SpriteName = OVRD
SpriteFrame = C
Action = A_TrapShot
Var1 = MT_FINALBOSSRUNECHOSHORT
Var2 = (1<<16)
Duration = 0
Next = S_FINALBOSSRECOVER4

State S_FINALBOSSRECOVER4
SpriteName = OVRD
SpriteFrame = B
Action = A_CapeChase
Var1 = 1
Duration = 0
Next = S_FINALBOSSCOLLECT0



State S_FINALBOSSCOLLECT0
SpriteName = OVRD
SpriteFrame = C
Action = A_RemoteAction
Var1 = -2
Var2 = S_FINALBOSSCOLLECTR
Duration = 0
Next = S_FINALBOSSCOLLECT1

State S_FINALBOSSCOLLECT1
SpriteName = OVRD
SpriteFrame = B|FF_ANIMATE|FF_GLOBALANIM
Action = A_SetCustomValue
Var1 = 1
Var2 = 2
Duration = 0
Next = S_FINALBOSSCOLLECT2

State S_FINALBOSSCOLLECT2
SpriteName = OVRD
SpriteFrame = B|FF_ANIMATE|FF_GLOBALANIM
Action = None
Var1 = 3
Var2 = 3
Duration = 2
Next = S_FINALBOSSCOLLECT3

State S_FINALBOSSCOLLECT3
SpriteName = OVRD
SpriteFrame = C
Action = A_CheckThingCount
Var1 = (MT_TEMPFLINGRING<<16)+1
Var2 = S_FINALBOSSRECOVER0
Duration = 1
Next = S_FINALBOSSCOLLECT4

State S_FINALBOSSCOLLECT4
SpriteName = OVRD
SpriteFrame = C
Action = A_SetCustomValue
Var1 = (MT_TEMPFLINGRING<<16)
Var2 = 2
Duration = 0
Next = S_FINALBOSSCOLLECT5

State S_FINALBOSSCOLLECT5
SpriteName = OVRD
SpriteFrame = C
Action = A_UseCusValMemo
Var1 = 1
Var2 = 0
Duration = 1
Next = S_FINALBOSSSTANDBY0

State S_FINALBOSSCOLLECTR
Action = A_RandomState
Var1 = S_NULL
Var2 = S_NULL


State S_FINALBOSSSPINSTART
SpriteName = OVRD
SpriteFrame = L
Action = A_SetObjectFlags
Var1 = MF_SPECIAL|MF_BOSS|MF_NOGRAVITY
Var2 = 0
Duration = 0
Next = S_FINALBOSSSPIN0

State S_FINALBOSSSPIN0
SpriteName = OVRD
SpriteFrame = L
Action = A_SetCustomValue
Var1 = 6
Var2 = 0
Duration = 0
Next = S_FINALBOSSSPIN1

State S_FINALBOSSSPIN1
SpriteName = OVRD
SpriteFrame = L
Action = A_FaceTarget
Var1 = sfx_spndsh
Var2 = 0
Duration = 0
Next = S_FINALBOSSSPIN2

State S_FINALBOSSSPIN2
SpriteName = OVRD
SpriteFrame = L
Action = A_PlaySound
Var1 = sfx_spndsh
Var2 = 0
Duration = 0
Next = S_FINALBOSSSPIN3

State S_FINALBOSSSPIN3
SpriteName = OVRD
SpriteFrame = L
Action = A_FaceTarget
Duration = 0
Next = S_FINALBOSSSPIN4

State S_FINALBOSSSPIN4
SpriteName = OVRD
SpriteFrame = L
Action = None
Var1 = sfx_spndsh
Var2 = 0
Duration = 0
Next = S_FINALBOSSSPIN5

State S_FINALBOSSSPIN5
SpriteName = OVRD
SpriteFrame = G|FF_ANIMATE|FF_GLOBALANIM
Var1 = 3
Var2 = 2
Duration = 15
Next = S_FINALBOSSSPIN6


State S_FINALBOSSSPIN6
SpriteName = OVRD
SpriteFrame = G
Action = A_Thrust
Var1 = 80
Var2 = 1
Duration = 0
Next = S_FINALBOSSSPIN7

State S_FINALBOSSSPIN7
SpriteName = OVRD
SpriteFrame = G
Action = A_TrapShot
Var1 = MT_FINALFIRE
Var2 = 90
Duration = 0
Next = S_FINALBOSSSPIN8

State S_FINALBOSSSPIN8
SpriteName = OVRD
SpriteFrame = G|FF_ANIMATE|FF_GLOBALANIM
Var1 = 3
Var2 = 2
Duration = 1
Next = S_FINALBOSSSPIN9

State S_FINALBOSSSPIN9
SpriteName = OVRD
SpriteFrame = G
Action = A_Repeat
Var1 = 20
Var2 = S_FINALBOSSSPIN6
Duration = 0
Next = S_FINALBOSSSPIN10

State S_FINALBOSSSPIN10
SpriteName = OVRD
SpriteFrame = G
Action = A_ZThrust
Var1 = 0
Var2 = (1<<16)+1
Duration = 0
Next = S_FINALBOSSSPIN11

State S_FINALBOSSSPIN11
SpriteName = OVRD
SpriteFrame = G
Action = A_SetCustomValue
Var1 = 1
Var2 = 1
Duration = 0
Next = S_FINALBOSSSPIN12

State S_FINALBOSSSPIN12
SpriteName = OVRD
SpriteFrame = G
Action = A_CheckCustomValue
Var1 = 1
Var2 = S_FINALBOSSSPIN1
Duration = 0
Next = S_FINALBOSSCHARGE10

State S_FINALBOSSCHARGESTART
SpriteName = OVRD
SpriteFrame = L
Action = A_SetObjectFlags
Var1 =  MF_SPECIAL|MF_NOGRAVITY|MF_BOSS
Var2 = 0
Duration = 0
Next = S_FINALBOSSCHARGE0

State S_FINALBOSSCHARGE0
SpriteName = OVRD
SpriteFrame = L
Action = A_PlaySound
Var1 = sfx_trpowr
Var2 = 0
Duration = 0
Next = S_FINALBOSSCHARGE1

State S_FINALBOSSCHARGE1
SpriteName = OVRD
SpriteFrame = L
Action = A_FaceTarget
Var1 = MT_PLAYER
Duration = 1
Next = S_FINALBOSSCHARGE2

State S_FINALBOSSCHARGE2
SpriteName = OVRD
SpriteFrame = L
Action = A_ZThrust
Var1 = 3
Var2 = (1<<16)+1
Duration = 1
Next = S_FINALBOSSCHARGE3

State S_FINALBOSSCHARGE3
SpriteName = OVRD
SpriteFrame = L
Action = A_Repeat
Var1 = 20
Var2 = S_FINALBOSSCHARGE2
Duration = 0
Next = S_FINALBOSSCHARGE4


State S_FINALBOSSCHARGE4
SpriteName = OVRD
SpriteFrame = M
Action = A_ZThrust
Var1 = 0
Var2 = (1<<16)+1
Duration = 4
Next = S_FINALBOSSCHARGE5

State S_FINALBOSSCHARGE5
SpriteName = OVRD
SpriteFrame = N
Action = A_SpawnObjectRelative
Var1 = 0
Var2 = MT_SHOCKWAVEFX
Duration = 4
Next = S_FINALBOSSCHARGE6


State S_FINALBOSSCHARGE6
SpriteName = OVRD
SpriteFrame = O
Action = A_Repeat
Var1 = 15
Var2 = S_FINALBOSSCHARGE4
Duration = 1
Next = S_FINALBOSSCHARGE7


State S_FINALBOSSCHARGE7
SpriteName = OVRD
SpriteFrame = O
Action = A_FaceTarget
Duration = 20
Next = S_FINALBOSSCHARGE8

State S_FINALBOSSCHARGE8
SpriteName = OVRD
SpriteFrame = O
Action = A_FireShot
Var1 = MT_FINALCANNON
Var2 = 0
Duration = 1
Next = S_FINALBOSSCHARGE9

State S_FINALBOSSCHARGE9
SpriteName = OVRD
SpriteFrame = O
Action = A_Repeat
Var1 = 100
Var2 = S_FINALBOSSCHARGE8
Duration = 1
Next = S_FINALBOSSCHARGE10

State S_FINALBOSSCHARGE10
SpriteName = OVRD
SpriteFrame = F
Action = A_SetObjectFlags
Var1 =  MF_SPECIAL|MF_SHOOTABLE|MF_BOSS
Var2 = 0
Duration = 60
Next = S_FINALBOSSSTANDBY0


State S_FINALBOSSRUNSTART
SpriteName = OVRD
SpriteFrame = F
Action = A_SetCustomValue
Var1 = 5
Duration = 0
Next = S_FINALBOSSRUN0

State S_FINALBOSSRUN0
SpriteName = OVRD
SpriteFrame = F
Action = A_FaceTarget
Duration = 10
Next = S_FINALBOSSRUN1

State S_FINALBOSSRUN1
SpriteName = OVRD
SpriteFrame = F
Action = A_PlaySound
Var1 = sfx_cdfm62
Var2 = 0
Duration = 0
Next = S_FINALBOSSRUN2

State S_FINALBOSSRUN2
SpriteName = OVRD
SpriteFrame = B
Action = A_CheckRange
Var1 = 1028
Var2 = S_FINALBOSSRUNFROM
Duration = 0
Next = S_FINALBOSSRUNTO


State S_FINALBOSSRUNFROM
SpriteName = OVRD
SpriteFrame = B
Action = A_ChangeAngleRelative
Var1 = 30
Var2 = 330
Duration = 0
Next = S_FINALBOSSRUN3

State S_FINALBOSSRUNTO
SpriteName = OVRD
SpriteFrame = B
Action = A_ChangeAngleRelative
Var1 = -60
Var2 = 60
Duration = 0
Next = S_FINALBOSSRUN3

State S_FINALBOSSRUN3
SpriteName = OVRD
SpriteFrame = B
Action = A_Thrust
Var1 = 100
Var2 = 1
Duration = 0
Next = S_FINALBOSSRUN4

State S_FINALBOSSRUN4
SpriteName = OVRD
SpriteFrame = B|FF_ANIMATE|FF_GLOBALANIM
Action = None
Var1 = 3
Var2 = 3
Duration = 1
Next = S_FINALBOSSRUN5


State S_FINALBOSSRUN5
SpriteName = OVRD
SpriteFrame = C
Action = A_TrapShot
Var1 = MT_FINALBOSSRUNECHOSHORT
Var2 = (1<<16)
Duration = 0
Next = S_FINALBOSSRUN6


State S_FINALBOSSRUN6
SpriteName = OVRD
SpriteFrame = C
Action = A_Repeat
Var1 = 10
Var2 = S_FINALBOSSRUN3
Duration = 0
Next = S_FINALBOSSRUN7


State S_FINALBOSSRUN7
SpriteName = OVRD
SpriteFrame = F
Action = A_ZThrust
Var1 = 0
Var2 = (1<<16)+1
Duration = 2
Next = S_FINALBOSSRUN8


State S_FINALBOSSRUN8
SpriteName = OVRD
SpriteFrame = F
Action = A_SetCustomValue
Var1 = 1
Var2 = 1
Duration = 0
Next = S_FINALBOSSRUN9

State S_FINALBOSSRUN9
SpriteName = OVRD
SpriteFrame = F
Action = A_CheckCustomValue
Var1 = 0
Var2 = S_FINALBOSSRUN0
Duration = 0
Next = S_FINALBOSSDICE0

State S_FINALBOSSDICE0
SpriteName = OVRD
SpriteFrame = F
Action = A_FaceTarget
Duration = 10
Next = S_FINALBOSSDICE1

State S_FINALBOSSDICE1
SpriteName = OVRD
SpriteFrame = F
Action = A_CheckCusValMemo
Var1 = (MT_TEMPFLINGRING<<16)+25
Var2 = S_FINALBOSSDICE2
Duration = 1
Next = S_FINALBOSSORBITSTART

State S_FINALBOSSDICE2
SpriteName = OVRD
SpriteFrame = F
Action = A_RandomStateRange
Var1 = S_FINALBOSSCHARGESTART
Var2 = S_FINALBOSSSPINSTART
Duration = 1
Next = S_FINALBOSSDICE1


State S_FINALBOSSCIRCLESTART
SpriteName = OVRD
SpriteFrame = F
Action = A_SetCustomValue
Var1 = 3
Duration = 0
Next = S_FINALBOSSCIRCLE0


State S_FINALBOSSCIRCLE0
SpriteName = OVRD
SpriteFrame = B|FF_ANIMATE|FF_GLOBALANIM
Action = A_PlaySound
Var1 = sfx_spin
Var2 = 0
Duration = 0
Next = S_FINALBOSSCIRCLE1

State S_FINALBOSSCIRCLE1
SpriteName = OVRD
SpriteFrame = B|FF_ANIMATE|FF_GLOBALANIM
Action = None
Var1 = 3
Var2 = 3
Duration = 1
Next = S_FINALBOSSCIRCLE2

State S_FINALBOSSCIRCLE2
SpriteName = OVRD
SpriteFrame = C
Action = A_TrapShot
Var1 = MT_FINALBOSSRUNECHOSHORT
Var2 = (1<<16)
Duration = 0
Next = S_FINALBOSSCIRCLE3

State S_FINALBOSSCIRCLE3
SpriteName = OVRD
SpriteFrame = D
Action = A_Thrust
Var1 = 100
Var2 = 1
Duration = 0
Next = S_FINALBOSSCIRCLE4


State S_FINALBOSSCIRCLE4
SpriteName = OVRD
SpriteFrame = D
Action = A_FaceTarget
Duration = 0
Next = S_FINALBOSSCIRCLE5


State S_FINALBOSSCIRCLE5
SpriteName = OVRD
SpriteFrame = D
Action = A_ChangeAngleRelative
Var1 = 90
Var2 = 90
Duration = 0
Next = S_FINALBOSSCIRCLE6


State S_FINALBOSSCIRCLE6
SpriteName = OVRD
SpriteFrame = D
Action = A_CheckRange
Var1 = 300
Var2 = S_FINALBOSSCIRCLE8
Duration = 0
Next = S_FINALBOSSCIRCLE7


State S_FINALBOSSCIRCLE7
SpriteName = OVRD
SpriteFrame = D
Action = A_ChangeAngleRelative
Var1 = -50
Var2 = -50
Duration = 0
Next = S_FINALBOSSCIRCLE1


State S_FINALBOSSCIRCLE8
SpriteName = OVRD
SpriteFrame = D
Action = A_Repeat
Var1 = 40
Var2 = S_FINALBOSSCIRCLE1
Duration = 0
Next = S_FINALBOSSCIRCLE9


State S_FINALBOSSCIRCLE9
SpriteName = OVRD
SpriteFrame = G
Action = A_BunnyHop
Var1 = 20
Var2 = 10
Duration = 0
Next = S_FINALBOSSCIRCLE10


State S_FINALBOSSCIRCLE10
SpriteName = OVRD
SpriteFrame = G
Action = A_PlaySound
Var1 = sfx_jump
Var2 = 1
Duration = 1
Next = S_FINALBOSSCIRCLE11


State S_FINALBOSSCIRCLE11
SpriteName = OVRD
SpriteFrame = G|FF_ANIMATE|FF_GLOBALANIM
Var1 = 3
Var2 = 3
Duration = 15
Next = S_FINALBOSSCIRCLE12


State S_FINALBOSSCIRCLE12
SpriteName = OVRD
SpriteFrame = G|FF_ANIMATE|FF_GLOBALANIM
Var1 = 3
Var2 = 3
Duration = 5
Next = S_FINALBOSSCIRCLE13

State S_FINALBOSSCIRCLE13
SpriteName = OVRD
SpriteFrame = G
Action = A_FireShot
Var1 = MT_FINALBOSSSPINECHO
Var2 = -48
Duration = 0
Next = S_FINALBOSSCIRCLE14

State S_FINALBOSSCIRCLE14
SpriteName = OVRD
SpriteFrame = G
Action = A_Repeat
Var1 = 12
Var2 = S_FINALBOSSCIRCLE12
Duration = 0
Next = S_FINALBOSSCIRCLE15

State S_FINALBOSSCIRCLE15
SpriteName = OVRD
SpriteFrame = G
Action = A_SetCustomValue
Var1 = 1
Var2 = 1
Duration = 0
Next = S_FINALBOSSCIRCLE16

State S_FINALBOSSCIRCLE16
SpriteName = OVRD
SpriteFrame = F
Action = A_CheckCustomValue
Var1 = 1
Var2 = S_FINALBOSSCIRCLE0
Duration = 60
Next = S_FINALBOSSSTANDBY0






State S_FINALBOSSORBITSTART
SpriteName = OVRD
SpriteFrame = F
Action = A_SetCustomValue
Var1 = 10
Duration = 0
Next = S_FINALBOSSORBIT0


State S_FINALBOSSORBIT0
SpriteName = OVRD
SpriteFrame = B|FF_ANIMATE|FF_GLOBALANIM
Action = A_PlaySound
Var1 = sfx_spin
Var2 = 0
Duration = 0
Next = S_FINALBOSSORBIT1

State S_FINALBOSSORBIT1
SpriteName = OVRD
SpriteFrame = B|FF_ANIMATE|FF_GLOBALANIM
Action = None
Var1 = 3
Var2 = 3
Duration = 1
Next = S_FINALBOSSORBIT2

State S_FINALBOSSORBIT2
SpriteName = OVRD
SpriteFrame = C
Action = A_TrapShot
Var1 = MT_FINALBOSSRUNECHOSHORT
Var2 = (1<<16)
Duration = 0
Next = S_FINALBOSSORBIT3

State S_FINALBOSSORBIT3
SpriteName = OVRD
SpriteFrame = D
Action = A_Thrust
Var1 = 100
Var2 = 1
Duration = 0
Next = S_FINALBOSSORBIT4


State S_FINALBOSSORBIT4
SpriteName = OVRD
SpriteFrame = D
Action = A_FaceTarget
Duration = 0
Next = S_FINALBOSSORBIT5


State S_FINALBOSSORBIT5
SpriteName = OVRD
SpriteFrame = D
Action = A_ChangeAngleRelative
Var1 = -90
Var2 = -90
Duration = 0
Next = S_FINALBOSSORBIT6


State S_FINALBOSSORBIT6
SpriteName = OVRD
SpriteFrame = D
Action = A_CheckRange
Var1 = 900
Var2 = S_FINALBOSSORBIT8
Duration = 0
Next = S_FINALBOSSORBIT7


State S_FINALBOSSORBIT7
SpriteName = OVRD
SpriteFrame = D
Action = A_ChangeAngleRelative
Var1 = 50
Var2 = 50
Duration = 0
Next = S_FINALBOSSORBIT1


State S_FINALBOSSORBIT8
SpriteName = OVRD
SpriteFrame = D
Action = A_Repeat
Var1 = 4
Var2 = S_FINALBOSSORBIT1
Duration = 0
Next = S_FINALBOSSORBIT9


State S_FINALBOSSORBIT9
SpriteName = OVRD
SpriteFrame = D
Action = A_FaceTarget
Duration = 0
Next = S_FINALBOSSORBIT10

State S_FINALBOSSORBIT10
SpriteName = OVRD
SpriteFrame = D
Action = A_TrapShot
Var1 = MT_FINALBOSSRUNECHO
Duration = 0
Next = S_FINALBOSSORBIT11

State S_FINALBOSSORBIT11
SpriteName = OVRD
SpriteFrame = G
Action = A_SetCustomValue
Var1 = 1
Var2 = 1
Duration = 0
Next = S_FINALBOSSORBIT12

State S_FINALBOSSORBIT12
SpriteName = OVRD
SpriteFrame = F
Action = A_CheckCustomValue
Var1 = 1
Var2 = S_FINALBOSSORBIT1
Duration = 1
Next = S_FINALBOSSDICE2


Object MT_FINALBOSSRUNECHOSHORT
SpawnState = S_FINALBOSSRUNECHOSHORT0
ReactionTime = 45
Speed = 40*FRACUNIT
Radius = 16*FRACUNIT
Height = 48*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY|MF_RUNSPAWNFUNC


Object MT_FINALBOSSRUNECHO
SpawnState = S_FINALBOSSRUNECHO0
ReactionTime = 45
Speed = 20*FRACUNIT
Radius = 16*FRACUNIT
Height = 48*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY|MF_RUNSPAWNFUNC


State S_FINALBOSSRUNECHOSHORT0
SpriteName = OVRD
SpriteFrame = B|TR_TRANS80
Action = A_SetFuse
Var1 = 15
Var2 = 1
Duration = 1
Next = S_FINALBOSSRUNECHO0

State S_FINALBOSSRUNECHO0
SpriteName = OVRD
SpriteFrame = B|TR_TRANS80
Action = A_GhostMe
Duration = 3
Next = S_FINALBOSSRUNECHO1

State S_FINALBOSSRUNECHO1
SpriteName = OVRD
SpriteFrame = C|TR_TRANS80
Action = A_GhostMe
Duration = 3
Next = S_FINALBOSSRUNECHO2

State S_FINALBOSSRUNECHO2
SpriteName = OVRD
SpriteFrame = D|TR_TRANS80
Action = A_GhostMe
Duration = 3
Next = S_FINALBOSSRUNECHO3

State S_FINALBOSSRUNECHO3
SpriteName = OVRD
SpriteFrame = E|TR_TRANS80
Action = A_GhostMe
Duration = 3
Next = S_FINALBOSSRUNECHO0



Object MT_FINALBOSSSPINECHO
SpawnState = S_FINALBOSSSPINECHO0
ReactionTime = 45
SeeSound = sfx_thok
Speed = 50*FRACUNIT
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY|MF_RUNSPAWNFUNC


State S_FINALBOSSSPINECHO0
SpriteName = OVRD
SpriteFrame = G|TR_TRANS50
Action = A_FireShot
Var1 = MT_FINALBOSSTHOK
Var2 = -48
Duration = 1
Next = S_FINALBOSSSPINECHO1

State S_FINALBOSSSPINECHO1
SpriteName = OVRD
SpriteFrame = H|TR_TRANS50
Action = A_FireShot
Var1 = MT_FINALBOSSTHOK
Var2 = -48
Duration = 1
Next = S_FINALBOSSSPINECHO2

State S_FINALBOSSSPINECHO2
SpriteName = OVRD
SpriteFrame = I|TR_TRANS50
Action = A_FireShot
Var1 = MT_FINALBOSSTHOK
Var2 = -48
Duration = 1
Next = S_FINALBOSSSPINECHO3

State S_FINALBOSSSPINECHO3
SpriteName = OVRD
SpriteFrame = J|TR_TRANS50
Action = A_FireShot
Var1 = MT_FINALBOSSTHOK
Var2 = -48
Duration = 1
Next = S_FINALBOSSSPINECHO0



Object MT_FINALBOSSTHOK
SpawnState = S_FINALBOSSTHOK0
ReactionTime = 45
Speed = 1
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOGRAVITY|MF_RUNSPAWNFUNC



State S_FINALBOSSTHOK0
SpriteName = NULL
SpriteFrame = A
Action = None
Duration = 1
Next = S_FINALBOSSTHOK1

State S_FINALBOSSTHOK1
SpriteName = THOK
SpriteFrame = A|TR_TRANS70
Action = A_ChangeColorAbsolute
Var1 = 0
Var2 = 55
Duration = 3
Next = S_FINALBOSSTHOK2

State S_FINALBOSSTHOK2
SpriteName = THOK
SpriteFrame = A|TR_TRANS80
Duration = 3
Next = S_FINALBOSSTHOK3

State S_FINALBOSSTHOK3
SpriteName = THOK
SpriteFrame = A|TR_TRANS90
Duration = 3
Next = S_NULL

Object MT_FINALCANNON
SpawnState = S_FINALCANNON0
SeeState = S_FINALCANNON3
ReactionTime = 45
Speed = 100*FRACUNIT
Radius = 40*FRACUNIT
Height = 40*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY


Object MT_FINALSHOCKWAVEFX
SpawnState = S_FINALCANNON0
SeeState = S_FINALSHOCKWAVEFX1
ReactionTime = 45
Speed = 1
Radius = 40*FRACUNIT
Height = 40*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY


State S_FINALSHOCKWAVEFX1
SpriteName = NULL
SpriteFrame = A
Action = A_SetCustomValue
Var1 = FRACUNIT/16
Var2 = 0
Duration = 1
Next = S_FINALSHOCKWAVEFX2

State S_FINALSHOCKWAVEFX2
SpriteName = NULL
SpriteFrame = A
Action = A_CusValAction
Var1 = S_FINALSHOCKWAVEFX6
Var2 = 0
Duration = 0
Next = S_FINALSHOCKWAVEFX3


State S_FINALSHOCKWAVEFX3
SpriteName = SKWV
SpriteFrame = B|TR_TRANS60|FF_PAPERSPRITE
Action = A_SetCustomValue
Var1 = 3
Var2 = 5
Duration = 1
Next = S_FINALSHOCKWAVEFX4

State S_FINALSHOCKWAVEFX4
SpriteName = SKWV
SpriteFrame = B|TR_TRANS50|FF_PAPERSPRITE
Action = A_SetCustomValue
Var1 = 2
Var2 = 4
Duration = 0
Next =  S_FINALSHOCKWAVEFX5

State S_FINALSHOCKWAVEFX5
SpriteName = SKWV
SpriteFrame = B|TR_TRANS50|FF_PAPERSPRITE
Action = A_Repeat
Var1 = 15
Var2 = S_FINALSHOCKWAVEFX2
Duration = 0
Next = S_NULL

State S_FINALSHOCKWAVEFX6
Action = A_SetScale
Var1 = FRACUNIT
Var2 = 0

State S_FINALCANNON0
SpriteName = NULL
SpriteFrame = A
Duration = 1
Next = S_FINALCANNON1

State S_FINALCANNON1
SpriteName = NULL
SpriteFrame = A
Action = A_ChangeAngleRelative
Var1 = 90
Var2 = 90
Duration = 0
Next = S_FINALCANNON2

State S_FINALCANNON2
SpriteName = THOK
SpriteFrame = A
Action = A_SetScale
Var1 = 4*FRACUNIT
Var2 = 0
Duration = 0
Next = S_FINALCANNONDYE0

State S_FINALCANNON3
SpriteName = SKWV
SpriteFrame = B|TR_TRANS50|FF_PAPERSPRITE
Action = None
Var1 = 0
Var2 = 0
Duration = 1
Next = S_FINALCANNON4

State S_FINALCANNON4
SpriteName = SKWV
SpriteFrame = C|TR_TRANS50
Action = A_PlaySound
Var1 = sfx_gbeep
Var2 = 1
Duration = 1
Next = S_FINALCANNONDYE0

State S_FINALCANNONDYE0
SpriteName = NULL
SpriteFrame = A
Action = A_RandomStateRange
Var1 = S_FINALCANNONDYE1
Var2 = S_FINALCANNONDYE8
Duration = 1
Next = S_SEESTATE

State S_FINALCANNONDYE1
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 11
Duration = 0
Next = S_SEESTATE

State S_FINALCANNONDYE2
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 12
Duration = 0
Next = S_SEESTATE

State S_FINALCANNONDYE3
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 20
Duration = 0
Next = S_SEESTATE

State S_FINALCANNONDYE4
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 23
Duration = 0
Next = S_SEESTATE

State S_FINALCANNONDYE5
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 32
Duration = 0
Next = S_SEESTATE

State S_FINALCANNONDYE6
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 36
Duration = 0
Next = S_SEESTATE

State S_FINALCANNONDYE7
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 41
Duration = 0
Next = S_SEESTATE

State S_FINALCANNONDYE8
SpriteName = SKWV
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 46
Duration = 0
Next = S_SEESTATE

Object MT_TEMPFLINGRING
SpawnState = S_TEMPFLINGRING0
DeathState = S_TEMPFLINGRING3
ReactionTime = 45
Speed = 40*FRACUNIT
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_BOUNCE|MF_NOCLIPTHING

State S_TEMPFLINGRING0
SpriteName = RING
SpriteFrame = A|FF_ANIMATE|TR_TRANS50
Var1 = 23
Var2 = 4
Duration = 10
Next = S_TEMPFLINGRING1

State S_TEMPFLINGRING1
SpriteName = RING
SpriteFrame = A|TR_TRANS50
Action = A_SetObjectFlags
Var1 = MF_SPECIAL|MF_BOUNCE
Duration = 0
Next = S_TEMPFLINGRING2

State S_TEMPFLINGRING2
SpriteName = RING
SpriteFrame = A|FF_ANIMATE
Var1 = 23
Var2 = 1
Duration = -1
Next = S_TEMPFLINGRING2

State S_TEMPFLINGRING3
SpriteName = SKWV
SpriteFrame = A
Action = A_SpawnObjectRelative
Var2 = MT_RING
Duration = 0
Next = S_NULL

Object MT_FINALFIRE
SpawnState = S_FINALFIRE0
ReactionTime = 45
Speed = 1
Radius = 8*FRACUNIT
Height = 32*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY

State S_FINALFIRE0
SpriteName = BFLA
SpriteFrame = A|FF_ANIMATE|TR_TRANS50
Var1 = 7
Var2 = 4
Duration = 350
Next = S_NULL





Object MT_FINALBARRAGEWAVE
SpawnState = S_FINALBARRAGEWAVE0
ReactionTime = 45
Speed = 10*FRACUNIT
Radius = 8*FRACUNIT
Height = 32*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY


State S_FINALBARRAGEWAVE0
SpriteName = NULL
SpriteFrame = A
Duration = 20
Next = S_FINALBARRAGEWAVE1

State S_FINALBARRAGEWAVE1
SpriteName = NULL
SpriteFrame = A
Action = A_SpawnObjectRelative
Var1 = 0
Var2 = MT_FINALBARRAGEPILLAR
Duration = 35
Next = S_FINALBARRAGEWAVE2


State S_FINALBARRAGEWAVE2
SpriteName = NULL
SpriteFrame = A
Action = A_Repeat
Var1 = 4
Var2 = S_FINALBARRAGEWAVE1
Duration = 1
Next = S_NULL



Object MT_FINALBARRAGEPILLAR
SpawnState = S_FINALBARRAGEPILLAR0
ReactionTime = 45
Speed = 10*FRACUNIT
Radius = 8*FRACUNIT
Height = 32*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY


State S_FINALBARRAGEPILLAR0
SpriteName = NULL
SpriteFrame = A
Duration = 1
Next = S_FINALBARRAGEPILLAR1

State S_FINALBARRAGEPILLAR1
SpriteName = NULL
SpriteFrame = A
Action = A_FindTarget
Var1 = MT_FINALBOSS
Duration = 0
Next = S_FINALBARRAGEPILLAR2


State S_FINALBARRAGEPILLAR2
SpriteName = NULL
SpriteFrame = A
Action = A_ZThrust
Var1 = 10
Duration = 0
Next = S_FINALBARRAGEPILLAR3

State S_FINALBARRAGEPILLAR3
SpriteName = NULL
SpriteFrame = A
Action = A_FaceTarget
Duration = 0
Next = S_FINALBARRAGEPILLAR4

State S_FINALBARRAGEPILLAR4
SpriteName = NULL
SpriteFrame = A
Action = A_ChangeAngleRelative
Var1 = 90
Var2 = 90
Duration = 0
Next = S_FINALBARRAGEPILLAR5

State S_FINALBARRAGEPILLAR5
SpriteName = NULL
SpriteFrame = A
Action = A_Thrust
Var1 = 5
Var2 = 1
Duration = 0
Next = S_FINALBARRAGEPILLAR6


State S_FINALBARRAGEPILLAR6
SpriteName = NULL
SpriteFrame = A
Action = A_SpawnObjectRelative
Var2 = MT_FINALBARRAGESHOOTER
Duration = 25
Next = S_FINALBARRAGEPILLAR7

State S_FINALBARRAGEPILLAR7
SpriteName = NULL
SpriteFrame = A
Action = A_Repeat
Var1 = 4
Var2 = S_FINALBARRAGEPILLAR3
Duration = 0
Next = S_NULL



Object MT_FINALBARRAGESHOOTER
SpawnState = S_FINALBARRAGESHOOTER0
ReactionTime = 45
Speed = 10*FRACUNIT
Radius = 8*FRACUNIT
Height = 32*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_RUNSPAWNFUNC


State S_FINALBARRAGESHOOTER0
SpriteName = NULL
SpriteFrame = A
Duration = 1
Next = S_FINALBARRAGESHOOTER1


State S_FINALBARRAGESHOOTER1
SpriteName = NULL
SpriteFrame = A
Action = A_ChangeAngleAbsolute
Var1 = 0
Var2 = 360
Duration = 0
Next = S_FINALBARRAGESHOOTER2

State S_FINALBARRAGESHOOTER2
SpriteName = NULL
SpriteFrame = A
Action = A_TrapShot
Var1 = MT_FINALBARRAGESHOT
Duration = 100
Next = S_NULL


Object MT_FINALBARRAGESHOT
SpawnState = S_FINALBARRAGESHOT0
ReactionTime = 45
Speed = 10*FRACUNIT
Radius = 8*FRACUNIT
Height = 32*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_RUNSPAWNFUNC


State S_FINALBARRAGESHOT0
SpriteName = NULL
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 34
Duration = 1
Next = S_FINALBARRAGESHOT1

State S_FINALBARRAGESHOT1
SpriteName = RRNG
SpriteFrame = A
Action = A_CapeChase
Var1 = (512<<16)
Var2 = (1500<<16)
Duration = 0
Next = S_FINALBARRAGESHOT2

State S_FINALBARRAGESHOT2
SpriteName = RRNG
SpriteFrame = A
Action = A_HomingChase
Var1 = 100*FRACUNIT
Duration = 0
Next = S_FINALBARRAGESHOT3

State S_FINALBARRAGESHOT3
SpriteName = RRNG
SpriteFrame = A|FF_ANIMATE
Var1 = 23
Var2 = 4
Duration = 1
Next = S_FINALBARRAGESHOT4

State S_FINALBARRAGESHOT4
SpriteName = RRNG
SpriteFrame = A
Action = A_CheckTrueRange
Var1 = 100
Var2 = S_FINALBARRAGESHOT5
Duration = 1
Next = S_FINALBARRAGESHOT2

State S_FINALBARRAGESHOT5
SpriteName = RRNG
SpriteFrame = A
Action = A_ZThrust
Var1 = 0
Var2 = (1<<16)+1
Duration = 0
Next = S_FINALBARRAGESHOT6

State S_FINALBARRAGESHOT6
SpriteName = RRNG
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var2 = 23
Duration = 0
Next = S_FINALBARRAGESHOT7

State S_FINALBARRAGESHOT7
SpriteName = RRNG
Action = A_RandomStateRange
Var1 = S_FINALBARRAGERRSHOT0A
Var2 = S_FINALBARRAGEHOMINGSHOT0
Duration = 0
Next = S_NULL

State S_FINALBARRAGERRSHOT0A
SpriteName = RRNG
SpriteFrame = A|FF_ANIMATE
Var1 = 7
Var2 = 4
Duration = -1
Next = S_FINALBARRAGERRSHOT1

State S_FINALBARRAGERRSHOT0B
SpriteName = RRNG
SpriteFrame = A|FF_ANIMATE
Var1 = 7
Var2 = 4
Duration = -1
Next = S_FINALBARRAGERRSHOT1

State S_FINALBARRAGERRSHOT0C
SpriteName = RRNG
SpriteFrame = A|FF_ANIMATE
Var1 = 7
Var2 = 4
Duration = -1
Next = S_FINALBARRAGERRSHOT1


State S_FINALBARRAGERRSHOT1
SpriteName = RRNG
SpriteFrame = A
Action = A_FindTarget
Var1 = MT_PLAYER
Duration = -1
Next = S_FINALBARRAGERRSHOT2

State S_FINALBARRAGERRSHOT2
SpriteName = RRNG
SpriteFrame = A
Action = A_FireShot
Var1 = MT_REDRING
Duration = 0
Next = S_NULL



State S_FINALBARRAGEBOMBSHOT0
SpriteName = RNGE
SpriteFrame = A|FF_ANIMATE
Var1 = 31
Var2 = 4
Duration = -1
Next = S_FINALBARRAGEBOMBSHOT1

State S_FINALBARRAGEBOMBSHOT1
SpriteName = RNGE
SpriteFrame = A|FF_ANIMATE
Action = A_FindTarget
Var1 = MT_PLAYER
Duration = 0
Next = S_FINALBARRAGEBOMBSHOT2

State S_FINALBARRAGEBOMBSHOT2
SpriteName = RNGE
SpriteFrame = A|FF_ANIMATE
Action = A_FireShot
Var1 = MT_FINALDEMOBOMB
Duration = 0
Next = S_NULL


State S_FINALBARRAGEHOMINGSHOT0
SpriteName = RNGM
SpriteFrame = A|FF_ANIMATE
Var1 = 22
Var2 = 4
Duration = -1
Next = S_FINALBARRAGEHOMINGSHOT1

State S_FINALBARRAGEHOMINGSHOT1
SpriteName = RNGM
SpriteFrame = A
Action = A_FindTarget
Var1 = MT_PLAYER
Duration = 0
Next = S_FINALBARRAGEHOMINGSHOT2

State S_FINALBARRAGEHOMINGSHOT2
SpriteName = RNGM
SpriteFrame = A
Action = A_FireShot
Var1 = MT_HOMINGRING
Duration = 0
Next = S_NULL

State S_FINALBARRAGEAUTOSHOT0
SpriteName = RNGA
SpriteFrame = A
Action = A_ChangeColorAbsolute
Var1 = 0
Var2 = 0
Duration = 0
Next = S_FINALBARRAGEAUTOSHOT1

State S_FINALBARRAGEAUTOSHOT1
SpriteName = RNGA
SpriteFrame = A|FF_ANIMATE
Var1 = 31
Var2 = 4
Duration = -1
Next = S_FINALBARRAGEAUTOSHOT2

State S_FINALBARRAGEAUTOSHOT2
SpriteName = RNGA
Action = A_FindTarget
Var1 = MT_PLAYER
Duration = 0
Next = S_FINALBARRAGEAUTOSHOT3

State S_FINALBARRAGEAUTOSHOT3
SpriteName = RNGA
Action = A_Fireshot
Var1 = MT_THROWNAUTOMATIC
Duration = -1
Next = S_FINALBARRAGEAUTOSHOT4

State S_FINALBARRAGEAUTOSHOT4
SpriteName = RNGA
Action = A_Repeat
Var1 = 5
Var2 = S_FINALBARRAGEAUTOSHOT3
Duration = 0
Next = S_NULL

Object MT_FINALDEMOBOMB
SpawnState = S_THROWNEXPLOSION1
DeathState = S_FINALDEMOBOOM
DeathSound = sfx_pop
SeeSound = sfx_cannon
ReactionTime = 45
Speed = 60*FRACUNIT
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY


State S_FINALDEMOBOOM
SpriteName = NULL
SpriteFrame = A
Action = A_OldRingExplode
Var1 = MT_REDRING
Duration = 1
Next = S_NULL

Object MT_HOMINGRING
SpawnState = S_HOMINGRING0
DeathSound = sfx_pop
SeeSound = sfx_thok
ReactionTime = 45
Speed = 60*FRACUNIT
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Damage = 3
SpawnHealth = 1
DispOffset = 0
Flags = MF_NOBLOCKMAP|MF_MISSILE|MF_NOGRAVITY|MF_RUNSPAWNFUNC



State S_HOMINGRING0
SpriteName = RNGM
SpriteFrame = A|FF_ANIMATE
Action = A_FindTracer
Var1 = MT_PLAYER
Duration = 1
Next = S_HOMINGRING1


State S_HOMINGRING1
SpriteName = RNGM
SpriteFrame = A|FF_ANIMATE
Action = A_HomingChase
Var1 = 40*FRACUNIT
Var2 = 1
Duration = 0
Next = S_HOMINGRING2

State S_HOMINGRING2
SpriteName = RNGM
SpriteFrame = A|FF_ANIMATE
Var1 = 22
Var2 = 4
Duration = 1
Next = S_HOMINGRING3

State S_HOMINGRING3
SpriteName = RNGM
SpriteFrame = A
Action = A_Repeat
Var1 = 60
Var2 = S_HOMINGRING1
Duration = 0
Next = S_HOMINGRING4

State S_HOMINGRING4
SpriteName = RNGM
SpriteFrame = A|FF_ANIMATE|FF_GLOBALANIM
Var1 = 22
Var2 = 4
Duration = -1
Next = S_HOMINGRING2